Top 10k strings from Utility Compilation 09 (19xx)(-).trd
in <root> / bin / z80 / software / Sinclair Spectrum Collection TOSEC.exe / Sinclair ZX Spectrum - Compilations - Utilities & Educational & Various / Sinclair ZX Spectrum - Compilations - Utilities & Educational - [TRD] (TOSEC-v2007-01-01) /
Back to the directory listing
7 ;"Routine in ROM"; 4 1 1 1 1 3 xwvmkZYXWVTNK7% 3 wa{ wybor: 3 THIS ROUTINE IS NON-RELOCATABLE 3 FFFFFFFFFFFFFFFFFF 3 "23658",O: 3 3 2 ~~````~~~~ 2 wozwrat w glawnoe men`................-M- 2 w+w+w+<w+w 2 to be replaced. 2 pE^ATX KOPII 2 ouble): "; 2 katalog diska.........................-C- 2 katalog 2 kalxkulqt. 2 iTRANSFER NEEDS 2 ARGUMENTS 2 iSYNTAX ERROR - MISSING COMMA 2 iSYNTAX ERROR - MISSING ARGUMENT 2 iSTRING TOO LARGE 2 iNOT A OR A VALID COLUMN 2 iNO MORE ROOM FOR FORMULAS 2 iNO FORMULA TO EDIT 2 iMUST TRANSFER ROW TO ROW 2 iMUST TRANSFER COLUMN TO COLUMN 2 iMUST BE A ROW OR COLUMN 2 iINVALID RANGE 2 iINVALID FORMULA 2 iINVALID COMMAND 2 iINVALID CELL ADDRESS 2 iFORMAT MUST BE G,I,$,L OR R 2 gSgOfM:^Tj\gD 2 gOgSldxqs` 2 \##N#F#"]\" 2 \!M}n{{jc/)/A!B`{{j}|gjnk 2 [}\r#s#N#F# 2 Zi"*p",p{2ppz2qp 2 ZX SPECTRUM MACHINE CODE TOOLKIT 2 UP-SCROLL",T 2 This is Line #";Z 2 Start address: 2 SAVE FROM 2 Routine Starts at ";A 2 ROUTINE NO: 2 R"E\*S\###" 2 Press ENTER to Expand the Whole Program 2 PROGRAM",D 2 No. STATEMENTS : 2 No. OF EXTRA BYTES::}\_:~\W: 2 No. LINES : 2 No. Bytes: 2 Ncc/}fhg{|/}j|j}yjk 2 Length of Program Only:! 2 LINE NO:NOW RENUMBER PROGRAM 2 K`/F/c``d/cfdj/Kjj 2 GGGGGGGGGGGGGGGGGGGG 2 First Byte: 2 Failure:$ No File$ Break$ No Disk$ Disk Full$ 2 FROM LINE NO:TO LINE NO:AFTER LINE NO:NOW RENUMBER PROGRAM 2 FFFFFFFFFFFF 2 ERROR CODE: ";N$: 2 ENLARGE REM 2 EFGHJMQRSUWXYZ 2 EEEEEEEEEE 2 DOWN-SCROLL",T 2 BLOCK COPY 2 BETA Lines 2 Auto-start Line No: 2 Array Name: 2 A,B,C$,DUR: 2 @ BAJT 2 >.w>0#w#w# 2 > == < 2 =7=7S<[EJC 2 <~ffffff~< 2 ;a;" bytes,",a/ 2 ;"press any key to continue": 2 54784,10751 2 23635+256* 2 16384,6912 2 /{g`zhg{/0 2 +-*]\"[\*Q\ 2 ++F+N+++"]\*S\~ 2 ++F+N+++"]\ 2 *]\###q#p##"]\ 2 *S\##"]\^#V 2 'l&/< /= 7< 2 #T]##N#F#~ 2 "supercod" 2 "fp1.7/mc" 2 "]\w#6$#6= 2 "Start of sourse: ";a: 2 "Start of source: ";a: 2 "ROM","0"," 2 "File name? ";n$: 2 "23659",F: 2 "23659",D: 2 "16"-G*(N<P);","; 2 "(p*,p#",p 2 "&p"(p**p: 2 "#";N;": "; 2 " This routine 2 " If you choose 2 " " 2 saves a screen, 2 recalls it. 2 ROUTINE # 65 HAS PREVENTED YOU FROM BREAKING INTO THIS PROGRAM 2 OVERPRINT 2 MAG= . ROT , Z= 2 a 2 0 2 2 2 1 |~ff~|```` 1 zsft=47963 1 zapisx ob'ektnogo fajla...............-O- 1 zapisx fajla po adresu................-A- 1 zapisx fajla na~inaq s adresa 32768...-S- 1 zapisx fajla na disk...................-S- 1 zagruzka ob'ektnogo fajla.............-O- 1 zagruzka fajla s diska.................-L- 1 zagruzka fajla po adresu..............-A- 1 zagruzka drajwera printera.............-P- 1 zAgruzka fajla po adresu 32768........-S- 1 y 1 wyhod w bejsik.........................-B- 1 wstawka-STRING 1 wersiq 2.1 1 wKL@^ITX SLOWO 1 wKL@^ITX MAG 1 w Ready to clear the text file Are you sure?Press y for yesn for no 1 variables"'" (3) Numeric Arrays"'" (4) 1 un ""boot"" 1 tor - - - zagruzi/wygruzi/nape~ataj ! 1 too many characters - max is 10 1 to the bottom area of 1 to be located": 1 to a new address.To correct,run this routine before loading.It resets System vars to pre-paging values,& ensures programs from cassette 1 to 23755 and not 23813." 1 this rout- ine within(using 1 there must be a name 1 the following:-"'" 1 the 2- byte equivalent(see #101)of the address of the 1 that is to be transformed,into ";: 1 text file verified 1 ter - - - wyrownqj celyj abzac ! 1 2 3 4 5 6 7 8 !to - - - - podwinx tekst wwerh !------------------------!tne 1 tekstowyj redaktor 1 tasword: basic O.K.; 1 t - wspomog. stranica 1 t - wkl`~i ehte 1 t - na drugu` wspomog. stranicu. < < < t a 1 t - - - wspomogatelxnaq stranica -------------------------sar 1 t + klawi{a dlq pe~ati znakow: [ ] 1 such lines." 1 statements won't work if 1 statement at 1 start in mem." 1 sets like the SCIFI in #79). 1 scrolls when re 1 sTERETX str? (d) 1 s. Also see #82,#90,#100,#103h" 1 s,by combining 1 s which are stored in RAM(ie,UDGs or alternative 1 s when logically possible.Also see #64 #90,#100,#103h." 1 s the no: of 1 s the length of the BASIC program. Memory used by variables is ignored. Also see #103,#111."; 1 s the address of the first 1 s RAMTOP to its original value, zeroes the entire memory & resets System Variables,UDGs & stack." 1 s & statements in a prog. Restart SUPERCODE with 1 russki.fCnt 1 routine,& let x=no: after LD,de.Use #115 with a higher start address & x =no: of bytes.The file should 1 razrabotal semenowskij i.o. * wersiq 2.2 1 razrabotal semenowskij i.o. g.harxkow 1 quotes to save space.Also see #64,#82 & #100." 1 pxxllffcca 1 prowerka zapisi.......................-V- 1 prog autostart, enter 1 1 part2 of your program with the header of another prog, by manipulating Record/Pause keys on taperec.Call this routine in part1,& immediately after,call routine115.Part2 will now auto- 1 pUSK-NAVMI ! 1 pE^(u)/pW(n)/(q)? 1 pEREM(r)/pE^(p)/w(q)? 1 p,q if bytes) Use the same 1 p(62221)+22)*64-a) 1 ot - - - uberi stroku !------------------------! 1 osk bolx{ie bukwy wkl./wykl. ! klawi{a 1 only. Incidentally,to 1 on lines 22 & 23." 1 on all 24 lines of the 1 of the same 1 of BASIC containing a prespecified sequence of 1 of a given 1 no: whose 2-byte equivalent was 1 najti! nOW? s 1 nO:qRLYK:kONTROLX PRINTERA 1 nAJDEN! nOW? (d) 1 n to prevent the scroll? prompt corrupting the 1 monitor MONS4..........................-M- 1 modify=51795 1 menowskij i.o. 1 mAG. (0) & 1 lENTA 0 1 kURSOR W 1 kURSOR NA 1 it to a different address, >23900 so it does not overlap with the System variables."'" (c)To 1 it back with 1 is to be execu- ted.Enter 1 is renumbered(except for arguments like 2.8 or N+3,which are high- lighted.If arg 1 is possible:use 1 intsh=45104 1 instruction. At the end, 1 ing the two parts." 1 in non-deletab-le lines:the listing vanishes 5)Autostart by using 1 in a BASIC program by another 1 gASiO!hSGkLrjIqnP*nC 1 from Part1,but anyone who attempts to 1 for another 1 find out what to print 1 ffvv~~nnff 1 fctt=36968 1 existing line no:,the next valid line no: is used.Cal -culated GOTOs etc are highlit.": 1 ete - - ubratx znak ! 6 - - - - & <= - - - - podwinx stroku wlewo ! eht 1 etc. Then 1 es from 10 to 60 & N lies between 1000 & 9999. You should experiment." 1 ed,use routine119 before each 1 ed,the BASIC will autorun,& will start the 1 ed into a Spectrum with shadow ROM paged in,as the prog will 1 ed came from tape/Mdrve, 1 eaiflgngf`jb{wLMCE]_ 1 each part immediately before saving the next one:this ensures that there will be no delay between 1 e 1 dfdtTtFtF\ 1 deo kursor na slowo wprawo ! eht R - - - - 1 deo kursor na slowo wlewo ! 2 - - - - @ 1 ded mode - uprawlq`}ie klawi{i LISTANIE TEKSTA FORMATIROWANIE TEKSTA 1 ded mode 1985 TRANSL. S P E K T R U M A S S O C . B R N O e 1 dA, STRKA 1 d, it must be relocated by the samenumber of bytes."'"(2)It is possible to relocate # 22,23,71&76 too,but only to add-resses which are multiples of 256 away from the original add-resses.Proceed as follows: Get the page of the routine,& press Q to quit.The original address is A - say you want to relocate it to A+256*ZZ,where ZZ is a +/-integer."; 1 d into 62866 & 62867 respectively. The 4 columns are addr,contents in dec+hex & 1 d into 57125/26 ) :if not you will return to the next statement. 1 d in 60952(lo) & 60953(hi):initially 9495." 1 d in 60878(lo) & 60879(hi):initially 9495.For the error 1 d - - - wstawx stroku/znak ! H - - - - ` o 1 crsxy=48719 1 color=53102 1 co-ordinates of the";'" top left hand corner of the box 1 co- ordinates of the top-left hand corner of the box." 1 c*vx"`r>82 1 but will jump to the 1 bpRINT-W 1 b* bEJSIK STR. 1 at any position on the screen: ie, to find the CODE of the character printed 1 at any position on the screen: ie, to find the 1 at ANY position X,Y on the 1 as well as resets 1 areutilised.)": 1 are set up as UDGs. To return to usual UDGs, 1 address from which 1 able). Use N to exit. 1 a$="tasword": 1 a$="mons4d": 1 a$="code3=": 1 a$="code2=": 1 a$="ZEUSDRV": 1 a$="ZEUS2": 1 a$="ZEUS1": 1 a$="Printer linefeed=": 1 a$="Printer carriage return=": 1 a$="Left margin on printing=": 1 a$="Interface control code1=": 1 a"''"to get back into VU-FILE.": 1 a udaleniq komentariew------------- 1 a higher RAMTOP first." 1 a headerless file, disassemble its 1 a RAMTOP belowZ & 1 `ENTER # for command " for textdirectly for data and formulaeENTER text - press 'ENTER' when complete Blank,Calc,Edit,Format,Go,Load Print,Quit,Repeat,Save,Trans CALCULATING ENTER the new formula and then press 'ENTER' ENTER data or a formula $Prefix= absolute cell reference 1 `ENTER # for command " for textdirectly for data and formulaeENTER text - press 'ENTER' when complete Blank,Calc,Edit,Format,Go,Load Print,Quit,Repeat,Save,Trans CALCULATING E 1 _________________ 1 __________"; 1 ________"' 1 ZX SPECTRUM (48K) * ZEUS Z-80 ASSEMBLER 1 ZX INTERFACE1 MUST BE ATTACHED 1 ZEUS assembler.........................-Z- 1 ZEUS Z80 ASSEMBLER 1983 CRYSTAL COMPUTING SISOFT 1 ZEUS ASSEMBLER 1 Z=A+G-F*(N= 1 Z;" /"'" ";Z+1 1 Z2=235 1 Z2=231Enter:- 9990 1 Z2=229 1 Z if from Microdrive).If anaddress >23800 is to be 1 YRAWN.:ej sVATX :el sFORMIR:er 1 X-3,0 The program will work provided you do not 1 X+1,0. To do this to other lines, first find their address X using routine 88, then 1 Wpp C, 1 What is the meaning of life ? 1 W.POLE:Em pR.POLE:em uST.TAB:et cWETA :eb 1 W-1STR:e3 wN-1STR:e4 tAB-WPR:K1 pst-UST:Si 1 VU-FILE 1 VU-CALC BL 1 VARIABLES END : 1 V U - F I L E 1 Up into TLW ... 1 URS-LW:K5 kURS-PR:K8 kURS-WW:K7 kURS-WN:K6 1 URS-LW:K5 kURS-PR:K8 kURS-WR:K7 kURS-WN:K6 1 UIT AND EXAMINE LINE 1210 1 The Last Word... 1 TOP/MID RIGHT-SCR",S 1 TOP/MID LEFT-SCR",S 1 TOP RIGHT-SCROLL",S 1 TOP OF FILE 1 TOP LEFT-SCROLL",S 1 TO SEE HOW THIS WAS DONE, EXIT & EXAMINE LINES 9278 TO 9286 1 TO SEE HOW THIS WAS DONE,"; 1 TLW2/H CP 1 TLW+++ BQ 1 THERE HAS BEEN A RECORDING ERROR 1 TER the new formula and then press 'ENTER' ENTER data or a formula $Prefix= absolute cell reference 1 TE.SIM:K0 sTE.STR:K9 sTE.KON:e9 sTE.WSE:ez 1 TASWORD B 1 Start of source = 1 Space (1-255)" 1 Save a file 1 SUPERSOFT SYSTEMS 1 STR. nO: 1 STAWKA:Ei tHT<<WL:Sq PR>>tHT:Se >>tHT<<:eh 1 STAWKA:Ei tEKST<<:Sq >>tEKST:Se >tEKST<:eh 1 START OF SOURCE = 1 START ADDRESS : 1 SOFTEK 'FP' 1 SIMULATOR",I 1 SIMULATOR",G 1 SEARCH MODE "STOP" to exitPress "ENTER" for another recordEnter the selecting string 1 SAVE'";C$( 1 SAGA SYSTEMS LIMITED 1 S with Interval I 1 S U P E R C O D E 1 Routine Length is ";B;" bytes 1 Routine Ends at ";A+B-E; 1 Routine Ends at ";A+B-1 1 Retreat (0-16/56): "; 1 Recording OK 1 ROUTINE IN ROM 1 ROUTINE #";N;" 1 ROUTINE ";C$'" IS NOW CALLED 1 RIGHT-SCROLL",S 1 RIGHT-SCROLL",33 1 REPLACE",D 1 RENUMBER",D 1 RELOCATION OF SUPERCODE ROUTINES 1 REFLECT Y-AXIS",E 1 REFLECT X-AXIS",E 1 RECORD LAYOUT Typewriter modefor entering titles of a blankrecord. Move cursor with arrows."STOP" to exit-"EDIT" for colour 1 RANDOMIZE USR63950 1 RANDOMIZE USR 3190 1 RANDOMIZE USR ";A 1 R1LIST:e3 wN1LIST:e4 tABUL. :K1 wST.kup:Si 1 R/KRAJ:Em lW/KRAJ:em tABULQT:et cWET/AT:eb 1 R.Justify on 1 Q,E;"This routine converts hex no:s to their decimal equivalents. It clears the screen & prompts 'H:' - now ENTER the hex no:. Only the last 4 hex digits will be converted. The routine auto- repeats. Enter 'Q' to quit, & 1 Q,E;"This routine 1 Q,E;"Call this routine at the start of your program, say by having as 1 Q,D;" The Spectrum doesn't check if there is enough space free in its memory before 1 Q 1 Q 1 Press any key to move cursor to the field which will define the record order and press "ENTER" 1 Press Y or N for yes or no 1 Press "ENTER" to delete 1 Press q key to quit printing> 1 Press "SPACE" in record layoutto leave blank paper colour 1 Press "ENTER" for the stringselect to apply to any field oruse any key to move cursor todesired field and press "ENTER" 1 Part2 by other means will crash the computer." 1 PUBLISHED IN MOSCOW BY SOFTSTAR 1 PRINTING",E 1 PRINTER, ADRES WOZWR 1 PRINTER LAYOUT Enter the titlesof a record to be printed. Blanklines below the last title willbe omitted. 'STOP' to exit. 1 PRINT;: RANDOMISE USR 60222 1 PRINT Press any key to stop 1 PRESS "E" TO ENTER A NEW FILE 1 POKE NUMBERS 1 PE^ATX NA PRINTERE 1 P,D;" To break into autostart progs, (a)Instead of 1 P,D;" (a)To check whether a ZX Inter- face1 is connected,see whether or not an error is produced if an instruction like 1 Out of symbol space ! 1 Out of memory ! 1 OWTOR :Er sTER.BL:Ek pOISK :Ex rAZMER :ew 1 OWT-TH:Er sTER-TH:Ek nAJTI-T:Eh s^-SLOW:ew 1 OWN-ST:ej sVATX-S:el rFM-ABZ:er 1 OW/NER:Ej pERENOS:Ew zAGL>ST:e2 sTRING$:ei 1 OVU3s C 1 OVERPRINT",E 1 OUT OF SYMBOL SPACE ! 1 OUT OF MEMORY ! 1 OUT OF MEMORY 1 ORDER FIELD: 1 ONTUR :Eo mARKERY:Ev zAG/STR:K2 dL/STR.:ev 1 ONTUR :Eo mARKER :Ev rEGISTR:K2 {RIFT :ev 1 ONTINUE / 1 ON /OFF checkerboard on the 1 O;"S U P E R C O D E"''" 1 O,E;"In order to make the FIRST line of your program non- deletable 1 NVU3c C 1 NON-RELOCATABLE ... use L 1 NO: ROUTINE 1 NO ROOM IN FILE 1 NO MORE THAN 20! *=\ 1 NO MORE OCCURRENCES 1 N$,C$,C$,DUR: 1 Monitor 1 MONITOR 1 MID/LOW RIGHT-SCR",S 1 MID/LOW LEFT-SCR",S 1 MID RIGHT-SCROLL",S 1 MID LEFT-SCROLL",S 1 MEMORY FULL 1 Lvu3d B@ 1 Load a file 1 Length = 1 LOW-WL:K3 sLOW-PR:K4 pRED-PR:Sw sTR.-nO:En 1 LOW-LT:K3 sLOW-PR:K4 pRED-PR:Sw iDTI-ST:En 1 LOW RIGHT-SCROLL",S 1 LOW LEFT-SCROLL",S 1 LORES TOP 1/3 SCR-RGHT 1 LIST Press any key to stop 1 LENGTH = 1 LEFT-SCROLL",S 1 LEFT-SCROLL",33 1 L);"'CODE ";A;",";B 1 Kempston lines 1 KVU-FILEcC 1 KL.WYR:Ej pERENOS:Ew wYR.RAZ:e2 wKL@^-$:ei 1 KILL CONDENSER",D 1 KAtalog diska..........................-C- 1 JVU-FILEsC 1 J;"----> "; 1 J,H;"Routine Length is ";B;" bytes 1 Ivufl B 1 Interwal (1-3): "; 1 Insert the disk and press a key 1 Insert off 1 Incorrect Number 1 Incorrect Address 1 Ifp1.7/mcC 1 If this is OK, press enter.If itis not, enter the new name (notethat only the first 8 1 IS LOADING 1 INTERWAL kOPII 1 INTERW. |KZEMP 1 INDEX PAGE ";(C-E)/ 1 INDEX - PAGE ";(Z-1 1 INCORRECT NUMBER 1 INCORRECT ADRESSs 1 I;"Less Sig More Sig": 1 Hidden line Print Colour Keep Quit " 1 HIDDEN LINE 1 H,D;" The ZX Microdrive spends most of its time trying to locate a file - actual loading is swift. 2 ways of saving files so that they can be accessed faster are (a) 1 Gzeud C 1 GGGGGGGGGGGGGGGGGGGGGGGG 1 GFP v1.7 B7 1 G,D;"1)Make line1 1 1 Freddy A Vachha & Vic B Rumsey 1 File exists 1 FZEUS D B 1 FZ80L C@ 1 FREE-SCROLLERN 1 FFFFFFFFFFF 1 F.VACHHA BSc 1 Execute must have a parameter 1 Enter Routine No: 1 Enter Index Page No: 1 E^ATX :Ep pAR.PE^:Eg iZM.kup:Et kATALOG:Ec 1 E^ATX :Ep mEN@-P^:Eg uST/rst:Et kATALOG:Ec 1 EZ80S C 1 EZ80L B' 1 EXECUTE MUST HAVE A PARAMETER 1 EXCHANGE",E 1 ENTER A RECORD "STOP" to exit 1 ENTER 1-6 FOR REQUIRED OPTION 1 END OF FILE* 1 END ADDRESS : 1 EFFECTS",I 1 EDIT for Help 1 Do you want the string select to remain active? 1 DO YOU WANT THE TOP OPEN? Y OR N 1 DISK(1-4): 1 DISK 1-4 : 1 DATA FIELDS Move the cursorwith the arrow keys and press"ENTER" to mark the start ofeach data field. "STOP" to exit 1 DALITX:K0 uBR>STR:K9 uBR>>FL:e9 uBR-WSE:e# 1 D,D;A$;A$;A$;A$: 1 Copy must have 3 parameters 1 CORRECTED BY KSA SOFTWARE,SPECIAL FOR SOFTSTAR Ltd. 1994 1 COPY MUST HAVE 3 PARAMETERS 1 COMMANDS ARE: Enter Alter InformForward Back Reset Order SelectQuit List Print Copy Delete 1 COLOUR Change the colours forsubsequent titles by pressingthe colour number required, orpress "ENTER" to leave unchanged 1 COLOUR Press a colour number(0-7) to define paper and inkcolours for this data field:PAPER INK 1 CAPS LOCK capitals lock 1 CAPS + SYMBOL SHIFT - enter or leave extended mode C O P Y R I G H T 1 9 8 3 T A S M A N S O F T W A R E ENTER returns to text. Both shift keys for the other help page. < < < T A S W O R D T W O > > > Extended Mode Control Keys SCROLLING FORMATTING F - fast scroll down E - right justify on/off G - fast scroll up W - word-wrap on/off J - justify line ZX PRINTER H - unjustify line P - print text file L - large printing on marker MARGINS K - large printing off marker A - set left margin at cursor S - reset margins to normal MISCELLANEOUS D - set right margin at curso 1 C/D/E/I/N/P/Q/R/S/X 1 Bw b\JSIH-STR. 1 BpE^ATATX 1 Back into TLW ... 1 BYTES USED: ,REMAINING: 1 Arrays"'" (5) FOR..NEXT control variables"'" Also see #70."; 1 A^ALO :Ea kONEC :Ez pRED.LI:Eu sL.LIST:Ed 1 A^<STR:e5 kON>STR:e8 sTRN-WW:e7 sTRN-WN:e6 1 A^.STR:e5 kON.STR:e8 lIST-WR:e7 lIST-WN:e6 1 A^-FJL:Ea fL-STER:E# wW-A-PV:Eu wN-A-PV:Ed 1 ANY OTHER KEY TO START 1 ANY OTHER KEY TO RESTART 1 ANY OTHER KEY TO GO ON 1 ANY OTHER KEY 1 ANY OTHER KEY 1 ALXKUL:ec tAJMER :ex wYHOD :Sq >b\JSIK:Eb 1 ALTER A RECORD SHIFT-6 to skip a data field 1 ALK'TR:ec tAJMER :eh oTMENA :Sq >bEJSIK:Eb 1 AGRUZ.:El sOHRAN.:Es sTERETX:Ee fORMAT :Ef 1 AGR-th:El wYGR-th:Es sTER-FL:Ee fORMAT :Ef 1 ADDRESS",D 1 A/C/D/E/I/J/L/M/N/P/Q/R/S/T 1 A$;A$;A$;A$: 1 @ukp PREFIKS 1 @rst PREFIKS 1 @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~! 1 >1 copies of the file on the same cartridge:for x copies,do 1 =Z80S B2 1 <cccccccJCUe 1 ;supercodC@ 1 ;supercodB 1 ;a$;" Ok.": 1 ;"with (just ENTER for find only)": 1 ;"type word to be replaced / found" 1 ;"type the name of the text file"; 1 ;"top left hand corner of the box" 1 ;"text file ";a$;" saved:"; 1 ;"scroll?????ccc" 1 ;"rererererererererererer": 1 ;"print text file p" 1 ;"press y for yes"; 1 ;"n for no" 1 ;"just a word - no spaces allowed": 1 ;"do you want to verify ";a$;" ?": 1 ;"code4="; 1 ;"and press ENTER" 1 ;"__________ 1 ;"You may now NEW the BASIC loader"''" Please refer to manual" 1 ;"You can scroll attributes too by using this routine & then No: 37 - 40, after defining an appropriate box & setting the Attr Value to 63." 1 ;"WRAP-AROUND POKE ";A+16 1 ;"WRAP-AROUND POKE "; 1 ;"WRAP AROUND POKE ";A+13 1 ;"VU-FILE loading" 1 ;"VERIFY file '";a$;"' ? (y/n)": 1 ;"V1.7:48K RAM" 1 ;"To say the 2 byte equivalent of X is L(Less)/M(More) sig: bytes means that 256 * M + L = X . This routine permits instant conversion of a number from 0 - 65535 to its 2-byte equivalent. To convert X into its 2-byte equivalent, enter RANDOMISE X. 1 ;"To save this routine, use"; 1 ;"To renumber lines starting with S using an interval I, first POKE 59580,I: POKE 59582,S-256* INT(S/256):POKE59583,INT(S/256) All GOTOs,GOSUBs,LISTs,LLISTs, RESTOREs,SAVE...LINEs & #Ns are renumbered(except for decimal/ calculated arguments & REMs).If the arg 1 ;"To help with PRINTing/PLOTting, this routine prints a BRIGHT ON /OFF checkerboard on the screen" 1 ;"To delete all lines from a to b POKE 23728, a - 256*INT(a/256) POKE 23729, INT(a/256) RANDOMISE b": 1 ;"To call this routine, use"; 1 ;"This routine will switch all flashing squares to steady & vice versa. This is hence very different from routines 32/33." 1 ;"This routine will switch all bright squares to normal & vice versa. This is hence very different from routines 34/35." 1 ;"This routine waits till a key (whose CODE will be put in L)is pressed.": 1 ;"This routine undoes the effect of #98, to allow lines of a CONFUSEd program to be EDITed/ altered.": 1 ;"This routine swops all chara- cters of a given CODE with all characters of a 2nd given CODE. POKE 63903, Old CODE POKE 63905, New CODE" 1 ;"This routine simulates a power- off: ie, it not only does NEW but also CLEARs RAMTOP to its original value, clears the entire memory & resets UDGs & System VARs.": 1 ;"This routine shortens & speeds up your program by deleting all REM statements in it. Also see #41,#82,#90 & #100.": 1 ;"This routine replays what #77 recorded. It is probably best to use your cassette-recorder (MIC socket) to amplify the sound.": 1 ;"This routine replaces numbers in the program by VAL String, which saves space but reduces speed. 0 is replaced by NOT PI. Also see #41,#64,#82,#90": 1 ;"This routine prints the address of the first character in the line the cursor points to.": 1 ;"This routine prints out both the no: of lines & statements in the program. If you try this out, use GOTO 9001 to restart." 1 ;"This routine prints out a full analysis of memory contents, starting at the address whose less & more significant bytes (see #61) have been POKEd into 62866 & 62867 respectively. The 4 columns are address, contents in decimal & hex & CHR$ (where printable).": 1 ;"This routine places a random # pair in the System Variable SEED ( PEEK 23670 & 23671 )." ; 1 ;"This routine lists all (1) Numeric variables (2) String variables (3) Numeric Arrays (4) String Arrays (5) FOR..NEXT control variables" 1 ;"This routine inserts a given number into a block of memory. POKE 63796, No: of bytes POKE 63798 (less sig) & 63799 (more sig), Start Address POKE 63801, No: to be inserted" 1 ;"This routine expands programs so that there is exactly one statement per line (except in IF..THEN lines).In reply to the prompt, enter the no: of the line you want expanded, or just ENTER if you want the entire program expanded. You must use #60 after calling this routine.": 1 ;"This routine enables you to determine the 1 ;"This routine deletes hidden colour items, thus saving space Also see #64,#82 & #100": 1 ;"This routine decodes tapeheader information & prints out a full analysis (name, address, type, length & auto-start details.": 1 ;"This routine converts hex no:s to their decimal equivalents. It clears the screen & prompts 'H:' - now ENTER the hex no:. Only the last 4 hex digits will be converted. The routine auto- repeats. Enter 'Q' to quit to BASIC. When called from #92(Hex Loader) only the last 2 digits are considered.": 1 ;"This routine converts decimal no:s from 0 to 65535 to hex. It clears the screen & prompts 'D:' - now ENTER the dec no:. Error message 6 results if the no: was out of range. The rou- tine autorepeats. Enter 'Q' to quit to BASIC.": 1 ;"This routine contracts programs into the minimum no: of lines, by combining lines wherever it is logically possible. Speed is also increased. See also #41, #64, #90 & #100": 1 ;"This routine allows hex input into RAM.POKE the less/more sig (see #61) bytes of the first address to be changed into the system-var DEFADD (23563/4). POKE 65360/61 with the start address of routine #63(Hex-Dec) which must also be in memory.": 1 ;"This routine allows a block of lines to be relocated within a BASIC program.In order to shift lines 4200 till 6745 so they appear after2200 in the listing respond 4200,6745 & 2200 to the auto-prompts.The new lines will all have number 0.Now call #60 to renumber & #57 to delete the old lines. Fully errorproofed.": 1 ;"The free space F from the last Variable to RAMTOP is printed. By the way, you can use POKE 23637,203:POKE 23638,92:SAVE 'Name'CODE 23552,RAMTOP-23550-F to save your program disguised as code - it will autostart at the first line."; 1 ;"The Toolkit contains 1 ;"Text ";a$;" lenght:"; 1 ;"Tasword Two"; 1 ;"THIS IS AN EXAMPLE OF THE NEW CHARACTER SET.POKE 23606/7 WITH THE LESS/MORE SIGNIFICANT BYTES OF THE START ADDRESS LESS 256 - CURRENTLY 0 & 223. TO RETURN TO THE NORMAL SET,POKE 23607,60.": 1 ;"Start at line? (1)": 1 ;"Screen paper? " 1 ;"Screen ink? " 1 ;"SCROLL-OFF POKE ";A+16 1 ;"SCROLL-OFF POKE "; 1 ;"SCROLL-OFF POKE ";A+13 1 ;"Routines 94 to 97 change the case (upper/lower)of strings or of the entire listing ( except strings),as specified.Note that an effective way of switching case from within programs is to POKE 23658,0 (LO) or 8(HI).": 1 ;"Routine in ROM": 1 ;"Reset interface/printer codes?": 1 ;"RAMTOP? ": 1 ;"Print: ";v: 1 ;"Press the q key to quit printing" 1 ;"PRINTER ERROR!": 1 ;"PRINT OPTIONS": 1 ;"PRINT AT co-ordinates of the"; 1 ;"PRINT - text ................. p" 1 ;"PRESS KEY 1 ;"POKE 64884, Overall Paper Col" 1 ;"POKE 64859, Overall Ink Colour" 1 ;"POKE 64829, Character Code POKE 64831, Box height POKE 64834, Box Width POKE 64832 & POKE 64835 with the PRINT AT co-ordinates for the top-left hand corner of the box." 1 ;"POKE 64682, Duration POKE 64693, Frequency 1 POKE 64702, Frequency 2" 1 ;"POKE 64648, Frequency POKE 64649, Span POKE 64651, Duration POKE 64670, 28(UP) or 29(DOWN)" 1 ;"POKE 63011, Pitch Decrement POKE 63012, Number of notes POKE 63014 & 63015, Pitch (less/more sig) POKE 63017 & 63018, Duration in ms (less/more sig)" 1 ;"POKE 63001 & 63002 with the Pitch value (less/more sig) POKE 63004 & 63005 with the Duration in ms (less/more sig)" 1 ;"POKE 60006, Duration (1-127) POKE 60020, Colours (0-7) POKE 60029, Line Space (1-255) 1 ;"POKE ";A+7 1 ;"POKE ";A+6 1 ;"POKE ";A+4 1 ;"POKE ";A+1 1 ;"Out of memory": 1 ;"No data present": 1 ;"No GOSUBs or GOTOs are changed- use #60 if you need that done. If L is the first Line to be renumbered, & I the Interval POKE 64711, I - 256*INT(I/256) POKE 64712, INT(I/256) POKE 64714, L - 256*INT(L/256) POKE 64715, INT(L/256)": 1 ;"Name of text file for saving?": 1 ;"Name file: ";a$: 1 ;"Move the cursor to the required line & then call this routine. You will be in EDIT mode, but with the cursor at the END of the line.": 1 ;"Make the following POKEs:- INK (63732) PAPER (63738) FLASH (63744) BRIGHT(63750) INVERSE(63756) OVER (63762) AT (63768,63771)CHR$ (63774)" 1 ;"MAIN MENU" 1 ;"Line spacing? (1)": 1 ;"Light source?": 1 ;"Less Sig More Sig": 1 ;"Insert the disk and press a key": 1 ;"Input file name ": 1 ;"Input fail name & press ENTER" 1 ;"In order to scroll a table of data > 22 lines long without stopping, use the command POKE 23692,x where x is the no: of lines to be scrolled. To scroll 'forever' use POKE 23692,255 within the loop that generates the lines.": 1 ;"In order to print lists or text using all the 24 lines on the screen, include POKE 23659,0 before each PRINT instruction. At the end, POKE 23659,2. Use PAUSE 0 to prevent the Scroll command corrupting the screen. PRINT #0 & PRINT #1 commands are also usable.": 1 ;"In order to make the first line of your program virtually non- deletable (by making it #0)POKE 23755,0: POKE 23756,0. To do this to other lines, first find their address X using routine 88, then POKE X-4,0: POKE X-3,0 The program will work provided you do not GOTO/GOSUB/RESTORE such lines.": 1 ;"INVERSE SCRL POKE ";A+13 1 ;"INTRODUCTION": 1 ;"Having connected the EAR socket of the cassette-recorder to the Specrum, start PLAYing the tape ( Voice is best. Let Vol=max ) Enter CLEAR 32767:RANDOMISE USR 65290. All memory from 32768 to 65K is used. To replay, call routine 78.": 1 ;"Follow the prompts to expand a REM statement (to accommodate code) anywhere in the program, by up to 9999 bytes": 1 ;"Finish at line? (last)": 1 ;"File already in existence": 1 ;"FVN's disk version 1989"; 1 ;"FULL COMPILER" 1 ;"ENTER 1 : EXIT PROGRAM"'' 1 ;"Draw multipointed-stars & rings by first plotting a point near the middle of the screen & then using DRAW X,Y,N where X & Y have magnitudes from 10 to 60 & N lies between 8000 & 9999. You may need to experiment.": 1 ;"Draw any closed figure on the screen, then PLOT a point lying INSIDE it. POKE 59293 with the Attribute value to be filled,& then call this routine 1 ;"DISC VERSION" 1 ;"Corrupts the listing without affecting program execution: attempting to EDIT/alter lines could be fatal (thus useful for program protection, as are #61/ #80).": 1 ;"Call this routine at the start of your program, say by having as LINE 1, '1 RANDOMISE USR 60899'. Now if an error of the type D:BREAK,H:STOP in INPUT or L:BREAK into program occurs the program will not stop but will jump to the line number whose 2 byte equivalent is POKEd into 60952(lo) & 60953(hi).This line is initially 9495.": 1 ;"Call this routine at the start of your program, say by having as LINE 1, '1 RANDOMISE USR 60826'. Now if an error occurs, (other than types 0:OK,8:END or 9:STOP) the program will not stop but will jump to the line number whose 2-byte equivalent is POKEd into 60878(lo) & 60879 (hi)...initially 9495. For the error code, PEEK 23681.": 1 ;"By combining this routine with No:s 37-40, joint scrolling of attributes can be done. Define a suitable box, use an Attr Val of 63 & call the Attr Scroll routine(s) once for every 8 calls of this routine." 1 ;"By POKEing 23606 & 23607 with different numbers, a corrupted character set is obtained. To normalise, POKE 23606,0 : POKE 23607,60. Protect your program with this, temporarily normal- ising before each PRINTing.": 1 ;"Border colour? " 1 ;"Banner paper? " 1 ;"Banner ink? " 1 ;"BY PENCRAFT 1991" 1 ;"A Laser Zap routine can also be called,using 1 ;"3 : RETURN TO VU-CALC": 1 ;"2 : CLEAR WORKSHEET"'' 1 ;"1)Make line#1 a REM statement: then POKE 23755,100. You can RUN the program but not LIST it until you POKE 23755,0. 2)POKE 23636,150. To return to normal, POKE 23636,92. 3)Use CONFUSE (#98) ,call #65 & #66 to disable BREAKs, use CHR$ SCRAMBLE (#59) to scramble the listing & #68 to create non- deletable lines with 1 ;"----> "; 1 ;", X - 256*INT(X/256)"'" POKE ";A+2 1 ;", New Attribute Val"; 1 ;", INT(X/256)": 1 ;", Box width"; 1 ;", Box height" 1 ;" to change the choice " 1 ;" press the "; 1 ;" key to proceed"; 1 ;" RAMTOP at 40000?(Y or N)": 1 ;" ERROR": 1 ;" & POKE ";A+3 1 ;" press "; 1 ;" File Abandoned": 1 ;" Do you wish to;" 1 ;" Above Centre Below " 1 ;" ** SAGA SYSTEMS LIMITED **", 1 ;" Left Centre Right " 1 ;" ": 1 ;" ": 1 ;" 1 :these can be 1 :if not,only 1 of the copies might be erased."'" (b)When saving different parts of the program, 1 :Swop sets all squares with the item On,to Off, & all with the item Off,to On." 1 :On/Off toggle the given Colour item"'" 1 9990, & proceedto 1 7,13;: LET Z= 1 7,13, you must enter PRINT 1 7,13, enter PRINT 1 6r#6U#6S##6m###6r#6U#6S##6b 1 6l#6A#6T##6b###6l#6A#6T##6m 1 65360/61 with the start address of routine #63(Hex-Dec) which must also be in memory." 1 65290. All the memory from 32768 to 65535 is used.To replay,use #78." 1 64834, Box Width"'" 1 64832/5 with 1 64831, Box height"'" 1 64714/5, 2 byte eq of S Also see #60." 1 64711/2, 2 byte eq of I 1 64702, Frequency 2" 1 64693, Frequency 1"'" 1 64682, Duration"'" 1 64670, 28(UP) or 29(DOWN)" 1 64651, Duration"'" 1 64649, Span"'" 1 64648, Frequency"'" 1 63951, Duration" 1 63905, New 1 63903, Old 1 63801, No: to be inserted" 1 63798/9, Start Address (2 byte eq)"'" 1 63796, No: of bytes"'" 1 63713/14 with the address of the new 1 63652/53 with the 2-byte equiv.(see #101)of the address of the 1 63648, no: of 1 63502,No: of 1 63499/500,2 byte equiv. (see#101)of 1 63017/8, Time(ms) "" """ 1 63014/5, Pitch( 2 byte eq) 1 63012, Number of notes 1 63011, Pitch Decrement 1 63004/5, Time(ms) "" """ 1 63001/2, Pitch( 2 byte eq) 1 60899 Now if an error of the type D: BREAK, H:STOP in INPUT or L: BREAK into prog occurs,the prog will not stop but will jump to the line no: whose 2 byte equi- valent was 1 60826. Now if/when an error(other than types 0:OK,8:END,9:STOP)occurs the program will not 1 60713","113","HEX->DEC CONVERTER",E 1 60039.Z contains the required 1 60039 Now Z is the required code.": 1 60020, Colours (0-7) 1 60006, Duration (1-127) 1 6 Erase current file 1 59300,6100 1 58682,Box Length in 1 58681,Box Width in pixels 1 58680,64(Up)72(Mid)80(Low) 1 58679,Top Left Square 1 57344----(8118)----65461 1 57124 with 195 IF you wish to execute m/c from an address( 1 57114/15 with 1st byte's address. 1 57110/11 with no: of bytes 1 56777,Speed(from 1=Fast to 255=Slow):if too fast you might be unable to read it. Call the routine either before running program(ignoring the initial display)or during the program.TRACE remains ON until you enter 1 56640,8896 1 50000,15535 1 5 Load a new data file 1 4 Save data file 1 32s.Also see #71" 1 32812,12330 1 3 Set printer layout 1 2SUPERC2 BZ 1 23788.If = Program length found with #104 then it came from a MicroDrive" 1 23787+256* 1 23728/9, 2 byte eq: of a 1 23692,255 within the loop that generates the lines." 1 23676,255."; 1 23676, 223 1 23670 & 23671 now hold the less significant & more signi- ficant byte values respectively": 1 23670 & 23671 give the less sig: & more sig: bytes respectively." 1 23659,2. Use 1 23659,0 before each 1 23659,0 at prog start - the effect is that of no:5)." 1 23636.If=23755,it hasn't been paged in so far."'" (c)To check if the program just 1 23636,92.3)Use #59,#98,call #65/66 to disable BREAKs & #68 for nondeleta- ble 1 23636,150. To return to normal 1 23636),100. You can RUN but not LIST prog until you 1 23635+256 * 1 23607, 60."; 1 23607, 223 1 23606/7 WITH THE LESS/MORE SIGNIFICANT BYTES OF THE START ADDRESS LESS 256(THIS IS CURRENTLY 0/223). TO RETURN TO THE USUAL 1 23552,RAMTOP-23550-F to save your program disguised as bytes- it will autostart at the first line."'" Also see #104."; 1 23550,Address of LAST byte of 1 2 byte eq of Start Address in 63980/1 ) with the display 1 2 Set record layout 1 1o?aT\havo 1 1983 Martin Lewis" 1 12345,12345 1 120"'"Then enter 1 1 Enter VU-FILE 1 0sp13 B 1 00000,00000 1 0"'"Turn Page: Use ENTER or Jump"'"Menu:";: 1 0 to restart the toolkit. If called from #92, only the last 2 digits are considered." 1 0 to restart the toolkit." 1 0 restarts" 1 .sp12 C 1 .sp11 C 1 .SUPERC1 Bb 1 . Also try 1 - Print calls etc 1 - LET Basic variables 1 - 23549. When the 1 - - - pogasitx kursor ! 3 - - - - # 1 ,use routine 87 to find its 1 ,to the given address,a headerless file" 1 ,this routine merges a 1 ,say X, to a new 1 ,ZEUS2 C 1 ,"VARIABLES SEARCH/LIST",1 1 ,"UNI-NOTE SOUND-GEN",5 1 ,"UNI-BEEP SIMULATOR",15 1 ,"UNCONFUSE LISTING",1 1 ,"U-CASE STRINGS",1 1 ,"U-CASE PROGRAM",1 1 ,"TAPE HEADER READER",1 1 ,"SUPER-RENUMBER",1 1 ,"STAR/TORUS DRAW",1 1 ,"SHUTTER-SCROLL RIGHT",10 1 ,"SHUTTER-SCROLL LEFT",10 1 ,"SCREEN-PRINT",1 1 ,"SCREEN STORE",1 1 ,"SCREEN SEARCH",1 1 ,"SCREEN OVERPRINT",1 1 ,"SCREEN INVERT",1 1 ,"SCREEN GRID",1 1 ,"SCREEN FILL",1 1 ,"SCREEN EXCHANGE",1 1 ,"SCIFI CHARACTER SET",1 1 ,"RIPPLE-SCROLL RIGHT",255 1 ,"RIPPLE-SCROLL LEFT",255 1 ,"REPLAY SOUND",0 1 ,"REMKILL CONDENSER",1 1 ,"RECORD SOUND",0 1 ,"RANDOM NUMBER GENERATOR",20 1 ,"PROTECT PROGRAM",1 1 ,"PAPER CHANGE",1 1 ,"PAINT-FILL",1 1 ,"ON ERROR GOTO",1 1 ,"ON BREAK GOTO",1 1 ,"OBLIQUE SCROLL-OFF",1625 1 ,"NON-DELETABLE LINES",1 1 ,"MULTI-BEEP SIMULATOR",8 1 ,"MONOCHROME PROGRAM",1 1 ,"MEMORY AVAILABLE",1 1 ,"LORES TOP 2/3 SCR-RGHT",255 1 ,"LORES TOP 2/3 SCR-LEFT",255 1 ,"LORES TOP 1/3 SCR-RGHT",255 1 ,"LORES TOP 1/3 SCR-LEFT",255 1 ,"LORES SCROLL-UP",24 1 ,"LORES SCROLL-LEFT",33 1 ,"LORES SCROLL RIGHT",33 1 ,"LORES R-DIAG SCROLL",22 1 ,"LORES MID 1/3 SCR-RGHT",255 1 ,"LORES MID 1/3 SCR-LEFT",255 1 ,"LORES LOW 2/3 SCR-RGHT",255 1 ,"LORES LOW 2/3 SCR-LEFT",255 1 ,"LORES LOW 1/3 SCR-RGHT",255 1 ,"LORES LOW 1/3 SCR-LEFT",255 1 ,"LORES L-DIAG SCROLL",22 1 ,"LINE RENUMBER",1 1 ,"LINE ADDRESS",1 1 ,"L-CASE STRINGS",1 1 ,"L-CASE PROGRAM",1 1 ,"INK CHANGE",1 1 ,"HIRES SW-DIAG SCROLL",190 1 ,"HIRES SE-DIAG SCROLL",190 1 ,"HIRES SCROLL-UP",175 1 ,"HIRES SCROLL-RIGHT",255 1 ,"HIRES SCROLL-LEFT",255 1 ,"HIRES SCROLL-DOWN",200 1 ,"HIRES NW-DIAG SCROLL",176 1 ,"HIRES NE-DIAG SCROLL",176 1 ,"HEX->DEC CONVERTER",1 1 ,"HEX LOADER",1 1 ,"FREE-SCROLLER",1 1 ,"FLASH SWITCH",1 1 ,"FLASH ON",1 1 ,"FLASH OFF",1 1 ,"EXPAND REM",1 1 ,"EXPAND PROGRAM",1 1 ,"DUAL-NOTE SOUND-GEN",10 1 ,"DEC->HEX CONVERTER",1 1 ,"CONTRACT PROGRAM",1 1 ,"CONFUSE LISTING",1 1 ,"COMPRESS NUMBERS",1 1 ,"CLEAR ALL ",1 1 ,"CHR$ SCRAMBLE",1 1 ,"BRIGHT SWITCH",1 1 ,"BRIGHT ON",1 1 ,"BRIGHT OFF",1 1 ,"BORDER EFFECTS",10 1 ,"BLOCK MEMORY INSERT",1 1 ,"BLOCK LINE DELETE",1 1 ,"BLOCK LINE COPY",1 1 ,"AWAIT KEYPRESS",1 1 ,"ATTRIBUTE SCR-UP",40 1 ,"ATTRIBUTE SCR-RIGHT",200 1 ,"ATTRIBUTE SCR-LEFT",40 1 ,"ATTRIBUTE SCR-DOWN",40 1 ,"ATTRIBUTE FILL",1 1 ,"APPEND STATEMENT",1 1 ,"ANALYSE PROGRAM",1 1 ,"ANALYSE MEMORY",1 1 ,"ALL-RIGHT SCROLL",32 1 ,"ALL-LEFT SCROLL",32 1 ,"24-LINE PRINTING",1 1 ,"2 BYTE CONVERTER",1 1 , use a fresh cassette - the routine is saved under the name "; 1 , use GOTO 9001(not RUN)to restart the program." 1 , PEEK 23681." 1 , on an empty Spectrum,to 1 , which saves space but reduces speed. 0 is replaced by NOT PI. Also see #64,#82,#90,#103,#104. To save even more space,replace all commonly occurring numbers (ie 0,1,2,10 etc)by variables, defined at the start. Routine #72 is useful for locating no:s" 1 +ZEUS1 C 1 +A;", 26"; 1 *ing:if a program is long/RAMTOP is low it could crash when you try to 1 *ing long programs.If any message besides 0 OK appears,shorten the prog: or 1 *SUPERCODE 1 **e\++++++F+N 1 ***RUSSIAN LETTERS*** 1 *** ENGLISH LETTERS *** 1 *""m"";n;Name$ 1 * it.That would lose the whole program.Instead,call this routine before 1 * ""m"";n;Name$( 1 * 1990 * 1 )to Tape/Microdrive, 1 ),No:s/Var (2.3,Z,A$),operations(*),rel(<) etc,or combinations of these. 1 ), or just after,part1,and call it from there.It will 1 (with Z=A+256*ZZ)as in case(1) overleaf.Note thatthe routine will no longer workat its old address."'"(3)The ROM routines & #120 are vdifficult to relocate (why ever relocate a ROM routine?!),#77/78have to be located at the top ofRAM.": 1 (same number),0.2) 1 (rEWIZI/pRINT/wYHOD)? 1 (X/256)"'" 1 (U-th/nOW/wYHOD)? 1 (KODY ms-6313) 1 (Fnaj/S zam/wyhod)? 1 (63768,63771) 1 (63762) 1 (63744) 1 (63738) 1 (63732) 1 (1)Using PAUSE"'"(2)W/out PAUSE 1 (*)/ INDEX/ CUSTOMISE"'"Restart: Use 1 (""SUPERCODE"", or ERCO),commands( 1 '/7?@HPX`hpxAIQYaiqyBJRZbjrzCKS[cks{DLT\dlt|EMU]emu}FNV^fnv~GOW_gow 1 '(exit).You willthen have the option of SAVEing the routine on tape,QUITting to BASIC or restarting." 1 ''''"ERROR was at"''"COLUMN "; 1 ''''"ENTER data file name": 1 '"This routine will be saved with the provisional name 1 '"If the program stops executing and returns to BASIC with an error code then enter:"''"GO TO 1 '" (1)At 10% Speed, using PAUSE"'" (2)At Full Speed" 1 '" To access the next routine in the Index, press ' 1 '" To access a routine whose no: you know, press ' 1 '" If you would like to have the details of this routine again, press ' 1 '" If you wish to return to the Index, press ' 1 ' (repeat)" 1 ' (number)": 1 ' (index)" 1 ' (continue)" 1 & statement no: currently being executed. 1 $ZEUS B 1 #4; is executed(use with r.no:65) This pages in the shadow ROM, if present."'" (b)To check if the shadowROM is paged in, 1 #0/#1.If the lower part of 1 # command does 1 # GENERATOR",E 1 "type 1,2,3,4,5,6 or 7 ";e$ 1 "type 1 or 2 ";e$ 1 "save text file s" 1 "save tasword t" 1 "return to text file y" 1 "programs.This BASIC program letsyou list,test,customise,relocateSAVE & VERIFY routines easily - but the routines will work just as well if the program is absent" 1 "merge text file m" 1 "load text file j" 1 "kOOPERATIW *bajt*" 1 "into Basic b" 1 "define graphics/printer g" 1 "VU-FILEs" 1 "VU-FILEc" 1 "Type graphics character code 128-143 ( 1 "Title ";t$: 1 "The save MUST then be verified." 1 "The code is from 57344 to 65461:it overwrites the first 12 UDGs.RAMTOP has been cleared to 57340" 1 "The Index follows- input the no:of a routine for its description(incl all addresses & POKEs)& anoptional example.Get to know theMenu options ";: 1 "That was the Laser Zap. Now for the Uni-Beep.": 1 "Start=";s'"File length=";l: 1 "Screen paper colour ";ps: 1 "Screen ink colour ";is 1 "SAVE - text .................. s" 1 "ROW ";d$: 1 "ROW ";d$: 1 "ROM","0","STAR/RING DRAW",E 1 "ROM","0","PROTECT PROGRAM",D 1 "ROM","0","NON-DELETABLE 1 "ROM","0","MDRVE DIAGNOSIS",D 1 "ROM","0","FREE-SCROLLER",E 1 "ROM","0","FAST 1 "ROM","0","CHR$ SCRAMBLE",E 1 "ROM","0","AUTO 1 "ROM","0","24 1 "ROM","0","2 BYTE CONVERTER",E 1 "RETURN to BASIC .............. b" 1 "RETURN - to text ............. y" 1 "Printer control graphics chars:" 1 "Press ENTER to continue";b$: 1 "Please replay the tape.": 1 "POKEs necessary for tailormakingthe program to your specific needs ) press ' 1 "OPTION? ";a 1 "OK,the name is 1 "Name of the file: ";a$ 1 "Name file: "; 1 "Move the cursor to the required line & then call this routine. You will be in EDIT mode, but with the cursor at the END of the line." 1 "MERGE - text ................. m" 1 "Length: ";b: 1 "LOAD - text .................. j" 1 "L" TO LOAD A FILE 1 "Further Reading: Programming the Z80 (R.Zaks,ISBN 0-89588-094-6) Complete SpectrumROMDisassembly (I.Logan&F.O'Hara,ISBN 0-86759- 117-X)": 1 "File ";a$''"S - 1 "F R ` F R `"'': 1 "Enter file name: "; 1 "DISKERROR=";err: 1 "CATOLOG - disk ............... c" 1 "Border colour ";b: 1 "Banner paper colour ";pb: 1 "Banner ink colour ";ib: 1 "And now at slow speed": 1 "A:RODIONOV" 1 "A:12345678" 1 ";A+P;", Box Width"'" 1 ";A+M;", Box Height" 1 ";A+G;" with"'" 1 ";A+F;", INT(X/256)" 1 ";A+E;", X- 256* 1 ";A+E;", Overall Colour" 1 ";A+E;", New Attribute Val"'" 1 "9";"1- EXIT"; 1 "9",H;"To call this routine, use"; 1 "9",D;" If the 2 byte equivalent of X = L(Less)/M(More) sig: bytes,then L+256*M=X.The less significant byte comes 1st. This routine is an instant converter of numbers from 0-65535 to their 2 byte equivalents.To convert X to its 2 byte equiv.,enter 1 "8";"Start: ";buf: 1 "8";"Lenght:";a 1 "7";" " 1 "65494","32","PIXEL RIGHT-SCROLL",S 1 "65462","32","PIXEL LEFT-SCROLL",S 1 "65350","112","HEX 1 "65318","32","REPLAY SOUND",D 1 "65290","28","RECORD SOUND",D 1 "65277","8","SURE 1 "65256","21"," 1 "65204","52"," 1 "65143","61"," 1 "65081","62"," 1 "65026","55"," 1 "64982","44"," 1 "64965","17"," 1 "64948","17"," 1 "64931","17"," 1 "64914","17"," 1 "64884",M: 1 "64883","31"," 1 "64858","25"," 1 "64828","30"," 1 "64809","19"," 1 "64784","25"," 1 "64771"-a+ 1 "64756","28"," 1 "64744","12"," 1 "64706","38"," 1 "64675","31","DUAL-NOTE SOUND-GEN",J 1 "64647","28","UNI-NOTE SOUND-GEN",H 1 "64629","18","SHUTTER RIGHT-SCROLL",I 1 "64611","18","RIPPLE RIGHT-SCROLL",S 1 "64593","18","SHUTTER LEFT-SCROLL",I 1 "64575","18","RIPPLE LEFT-SCROLL",S 1 "64550","25"," 1 "64525","25"," 1 "64500","25"," 1 "64475","25"," 1 "64450","25"," 1 "64425","25"," 1 "64400","25"," 1 "64375","25"," 1 "64350","25"," 1 "64325","25"," 1 "64300","25"," 1 "64275","25"," 1 "64211","59","LOWER-CS PROGRAM",D 1 "64197","14","MEMORY AVAILABLE",E 1 "64098","99","PIXEL DOWN-SCROLL",192 1 "64001","97","PIXEL UP-SCROLL",192 1 "63976","25"," 1 "63950","26","LASER ZAP",I 1 "63902","43"," 1 "63806","96","BLOCK 1 "63795","11","BLOCK MEMORY INSERT",E 1 "63777","18"," 1 "63728","49"," 1 "63644","83"," 1 "63490","154"," 1 "63382","108","INITIALISE",D 1 "63205","177"," 1 "63163","42"," 1 "63143","20"," 1 "63124","19"," 1 "63051","73"," 1 "63034","17","OBLIQUE SCROLL-OFF",1625 1 "63010","24","MULTI 1 "63000","10","UNI 1 "62943","54","MONOCHROME PROGRAM",D 1 "62857","86","ANALYSE MEMORY",E 1 "62819","38"," 1 "62533","286","TAPE HEADER READER",D 1 "62404","129","ANALYSE PROGRAM",E 1 "62087","317","EXPAND PROGRAM",D 1 "61400","687","CONTRACT PROGRAM",D 1 "61000","400","BLOCK 1 "60972","24","AWAIT KEYPRESS",D 1 "60954",a- 1 "60899","72","ON BREAK 1 "60879",D: 1 "60878",J: 1 "60826","73","ON ERROR 1 "60595","118","DEC->HEX CONVERTER",E 1 "60494","101"," 1 "60407","86","APPEND STATEMENT",D 1 "60222","185","VARIABLES 1 "60192","30"," 1 "60162","30"," 1 "60039","123"," 1 "60029",Z: 1 "60029",I: 1 "60020",F: 1 "60006",I: 1 "60000","38"," 1 "6";"~The Last Word ...~", 1 "6";"Printer ready?": 1 "59988","12","PROGRAM LENGTH",E 1 "59975","13"," 1 "59294","681","SUPER-RENUMBER",D 1 "59136","158","PAINT-FILL",E 1 "58892","244"," 1 "58833","59","UPPER-CS 1 "58774","59","LOWER-CS 1 "58715","59","UPPER-CS PROGRAM",D 1 "58683","31","BLOCK MEM 1 "58608","75","PIXEL BOXRIGHT SCROLL",S 1 "58571","112","PIXEL BOXLEFT SCROLL",S 1 "58398","173","UNCONFUSE 1 "58263","135","CONFUSE 1 "58115","148","COMPRESS NUMBERS",D 1 "57344","768","SCIFI 1 "57176","168","FOREIGN ACCENTS",E 1 "57159","17","ADAPT PROGRAM",D 1 "57126","33","SURE 1 "57108","18","HEADERLESS FILES",D 1 "57094","14","ANTI- 1 "56777",E: 1 "56640","450","TRACE VARI-SPEED",E 1 "56"*(N<P)'" SCROLL-OFF: 1 "54"+(N<P): 1 "5";"Tasword Two/SK/MC-6312"; 1 "4)Imbed hidden colour CHR$ to set INK=PAPER within non-delet- able lines:the listing vanishes5)Autostart by using SAVE Name$ LINE X. Let line X be 'LET ERR= 256*PEEK 23614 +PEEK 23613:POKE ERR,0:POKE ERR+1,0'. Any BREAK/ error will now cause a crash.": 1 "4)Embed hidden colour CHR$ to set 1 "36"+A;", 26"'" SCROLL-OFF: 1 "36"+A;", 0" 1 "3438","0","LOWER 1 "3190","0"," 1 "30466"+256* 1 "2590"*(N$="L") 1 "23659",F*(N= 1 "23611",s: 1 "23606",D: 1 "234"-Z,D: 1 "23295"+Z, 1 "2.3025"): 1 "2";"File '";a$;"' is absent!": 1 "2";" press 1 "2";" Press 1 "19",E;"8 calls" 1 "18",D;" WRAP-AROUND: 1 "16";"Right" 1 "15",E;"To scroll attributes as well, refer to routines 37-40(define suitable box & Attr value).Call the attribute scroll once per 1 call of this routine.": 1 "13";"VU-CALC": 1 "13";", 0" 1 "1210"+N*I: 1 "111"),D;" 1 "109"),H;" 1 "1";"press key" 1 "1";"Text o'key!": 1 "1";"Text file error! Press key": 1 "1";"Press key": 1 "1";"Insert disk & press key": 1 "0","0","RESET",D 1 "******** PRINTER O'KEY ********" 1 "'''"Where any part of SUPERCODE is used,a prominent credit must be given to this fact, and to its authors, F.A.Vachha BSc & V.B. Rumsey.": 1 "''"Number of Routines: 1 "''"Define Z1,Z2:-"'"For 1 "''"(1)To move a Relocatable Routineso that it starts at address Z,first 1 "'"Place: 56640-65535(RAMTOP=56639)Help Prog: 1 " WRAP-AROUND: 1 " To renumber without 1 " To renumber lines starting with S using interval I, 1 " To make a 1 " To help with 1 " To delete all lines from a to b 1 " This routine zeroes all numeric variables/arrays,sets all 1 " This routine waits till a key (whose CODE will be put in L)is pressed."; 1 " This routine undoes the effect of #98, to allow lines of a CONFUSEd program to be EDITed/ altered." 1 " This routine swops all 1 " This routine simulates a power- off: ie, it not only does 1 " This routine shortens+speeds up programs by deleting all 1 " This routine replays what #77 recorded. It is probably best to use your cassette-recorder (MIC socket) to amplify the sound." 1 " This routine replaces numbers in the program by VAL 1 " This routine replaces each occ- urrence of a specified 1 " This routine prints out a full analysis of memory contents, starting at the address whose less & more significant bytes (see #101)have been 1 " This routine places a random # pair in the System Variable SEED ( PEEK 23670 & 23671 )." ; 1 " This routine operates on 1 " This routine merges a 1 " This routine loads information stored in memory into an auto- created 1 " This routine lists each 1 " This routine lists all"'" (1) Numeric variables"'" (2) 1 " This routine inserts a given number into a block of memory. 1 " This routine expands programs so that there is exactly one statement per line (except in IF..THEN lines).In reply to the prompt, enter the no: of the line you want expanded, or just ENTER if you want the entire program expanded. You must use #60 after calling this routine." 1 " This routine enables you to determine the 1 " This routine does a 1 " This routine deletes all hidden colour 1 " This routine decodes tapeheader information & prints out a full analysis (name, address, type, length & auto-start details." 1 " This routine converts decimal no:s from 0 to 65535 to hex. It clears the screen & prompts 'D:' - now ENTER the dec no:. Error message 6 results if the no: was out of range. The rou- tine autorepeats. Enter 'Q' to quit,& 1 " This routine allows hex input into RAM.POKE the less/more sig (see #101)bytes of the first address to be changed into the system-variable DEFADD(23563/4) 1 " This routine allows a block of lines to be relocated within a BASIC program.In order to shift lines 4200 till 6745 so they appear after2200 in the listing respond 4200,6745 & 2200 to the auto-prompts.The new lines will all have number 0.Now call #60 to renumber & #57 to delete the old lines. Fully errorproofed." 1 " The routine speeds up+contracts programs into the minimum no:of 1 " The routine changes all squares with a given 1 " The routine 1 " The free space F from the last Variable to RAMTOP is printed. Use 1 " THIS IS AN EXAMPLE OF THE SCIFI 1 " Routines 94 to 97 change the case (upper/lower)of strings or of the entire listing ( except strings),as specified.Note that an effective way of switching case from within programs is to POKE 23658,0 (LO) or 8(HI)." 1 " Press any other key to restart." 1 " In some cases the command 1 " In order to scroll a table of data > 22 lines long without stopping, use the command 1 " INVERSE SCR: 1 " Having connected the EAR socket of the cassette-recorder to the Spectrum,start playing the tape (Voice is best;Vol=Max),& 1 " Follow the prompts to expand a REM statement (to accommodate code) anywhere in the program, by up to 9999 bytes" 1 " Draw multipointed-stars & rings by first plotting a point near the middle of the screen & then using DRAW X,Y,N where X & Y have magnitudes from 10 to 60 & N lies between 1000 & 9999. You should experiment." 1 " Draw any closed figure on the screen, then PLOT a point lying INSIDE it. POKE 59293 with the Attribute value to be filled,& then call this routine." 1 " Corrupts the listing without affecting program execution: attempting to EDIT/alter lines could be fatal (thus useful for program protection, as are #68/ #80)." 1 " Call this routine at the start of your program, say by having as 1 " By POKEing 23606 & 23607 with different numbers, a corrupted character set is obtained. To normalise, POKE 23606,0 : POKE 23607,60. Protect your program with this, temporarily normal- ising before each PRINTing." 1 " BASIC programs with m.code in 1 " A set of accented 1 " press -": 1 " just press ENTER for default values given in brackets" 1 " The routines run hundreds of times faster than BASIC,& can becustomised easily. Do enjoy yoursuperb Z80 MachineCode Library!" 1 " Keep a written record of the name, address & length of this routine, as well as of all the relevant POKEs. For details on relocation, refer to the manual." 1 " If you have noted important details ( address, length, any" 1 " press any key to continue": 1 " Use Abandon to delete it": 1 " 2) to return to main menu" 1 " 2) Load a data file" 1 " 1) to try again": 1 " 1) Create a new figure": 1 " 7) Change colours" 1 " 6) Display " 1 " 5) Save a data file" 1 " 4) Create a new figure" 1 " 3) Load a data file" 1 " 2) Abandon" 1 " 1) Modify a figure" 1 ~ | \ { } ! 1 ~ | \ { } ! 1 wozwrat na tekst. sar+ 1 values are not changed.Refer to #25-27 for 1 to move figure " 1 to move figure " 1 to move cursor CAPS SHIFT-slow cursor " 1 to keep values given:" 1 to """" & all dimensioned 1 swops the current screen & the STOREd one A screen has 6912 bytes (24*32* 8, + 24*32 Attributes) & should be stored above RAMTOP (CLEARed downwards to make room).To have a screen from X-6911 to X use POKE ";A+1 1 swops the current screen & the STOREd one A screen has 6912 bytes (24*32* 8, + 24*32 Attributes) & should be stored above RAMTOP (CLEARed downwards to make room).To have a screen from X to X+6911, use 1 pERERABOTAN lAPTEWYM & 1 onoff C A P S L O C K 6 1 o > > > ehte 1 nOMER : 1 messages." 1 messages" 1 machinecode routines which you can call(using RANDOMIZE/PRINT USR) bothdirectly & from within your own" 1 m/code O.K. 1 is now called 1 if finished)";a$: 1 if finished)";a$ 1 iSK(f)/zAM(s)/(q)? 1 for continue,"; 1 double strike 1 does not close all streams.If this occurs,use this routine." 1 da, STR. 1 V.RUMSEY 1 Tasman Software 1983": 1 Tasman & SK Software 1983/1990": 1 TNE TEHT 1 THE DISK VERSION 1 Start Line Delete End 1 SECOND PASS 1 SAVE""Name""CODE ";A;",";B 1 Printer on 1 PRESS ANY KEY TO TURN THE PAGE 1 POKE 63951,Duration. To save it use SAVE 'ZAP'CODE 63950,26." 1 POKE 23607, 223 1 On EpsonFX80 Off TRUE VIDEO cursor to word left 1 NO ERRORS 1 Myrmidon Software 1986",: 1 Myrmidon Software 1986 1 Magnify Reduce Picture Near Far CAPS SHFT-slow Quit 1 K=K/[IFT S=S/[IFT E=K/[+S/[ e=E+S/[IFT 1 K=K/[IFT S=S/[IFT E="e" KOM. e=E+S/[IFT 1 FIRST PASS 1 F.VACHHA 1 ERR+1,0'.Any BREAK/ error will now cause a crash. 6) 1 DATE:"190194"20.01."21.01."22.01."23.01."24.01." 25.01"26.01."27.01."28.01."29.01."30.01."31.01." + " 30000 125000 148800 0 0 0 0 0 0 0 0 0 0 1 DATE:"190194"20.01."21.01."22.01."23.01."24.01." 25.01"26.01."27.01."28.01."29.01."30.01."31.01." + " 30000 125000 0 0 0 0 0 0 0 0 0 0 0 1 DATE:"190194"20.01."21.01."22.01."23.01."24.01." 25.01"26.01."27.01."28.01."29.01."30.01."31.01." + " 30000 0 0 0 0 0 0 0 0 0 0 0 0 1 59580 ,I: POKE 59582/3,2 byte eq:of S Each 1 23692,x where x is the no: of lines to be scrolled. To scroll 'forever' use 1 1991 SI SOFT 1 1983 Martin Lewis 1 1983 Crystal Computing 1 1983 CRYSTAL COMPUTING * 1 1983 * SI SOFT 1 1.The 2 byte equivalents(see # 101)of the starting address of the memory & the no: of bytes must be stored in 63209/10 and 63206/07 respectively." 1 - zapre}enie deleniq slow w/w 1 - zamenitx/najti w - ust. na~alo bloka 1 - wyrownqj stroku wprawo PRINTER N - naru{x wyrawniwanie stroki r - nape~ataj tekst 1 - wkl. wysoku`. pe~atx POLQ K - wykl. wysoku` pe~atx a - ustanowi lewoe pole 1 - ustanowi normalxnye polq RAZNOE d - ustanowi prawoe pole s - zamena okna w tekste (64/32) h - sotri wesx tekst RABOTA S BLOKAMI 1 - ust. konec bloka m - pere{li blok k kursoru 1 - revim wstawki wkl./wykl. 1 - na stranicu wpered E - wyrawniwanie wprawo wkl./w. 1 - na stranicu nazad 1 - kopiruj blok k kursoru ed 1 - dop. znaki ! 4 - - - - $ de 1 - PRESS ANY KEY TO GO ON 1 - - - podwinx tekst wniz ! 1 - - - - idi na konec teksta ! N - - - - ^ at - - - - idi na na~alo teksta !-------- 1 #&),037;?CGKOTX]bglqw| 1 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_#abcdefghijklmnopqrstuvwxyz{|}~@ 1 the cursor is pointing to."; 1 stored in RAM ( 1 ster"STR"? l 1 proportional 1 no:,the next valid 1 kordial * 1992 1 emphasised 1 but also 1 X,Y;""Optional Message"";Variable The method works with 1 Shade 1 Open Close Figure Magnify Quit Next z Reduce 1 NO EXE-FILE ! 1 MAGNIFICATION= . Z= 1 MAGNIFICATION= . Z= 1 Key 8ENTER - - start of next line 1 Key 7TO - - - - scroll down 1 Key 6NOT - - - delete line 1 Key 5AT - - - - go to start of text 1 Key 4AND - - - insert line/character 1 Key 3<> - - - - centre line 1 Key 2DELETE - - delete character 1 Key 1ARROWS - - cursor movement 1 G R A P H I C S ! 1 CURSOR AT X= Y= Z= 1 > > > ed 1 - - na~alo nowoj stroki ------------------------ SAR 1 !"#$$%&''())*+,,-.//01223445667899:;;<==>?@@ABBCDDEEFGGHIIJKKLMMNNOPPQQRSSTTUVVWWXXYZZ[[\\]]^^__``aabbccddeeffgghhiiijjkklllmmnnnoopppqqqrrrssstttuuuvvvvwwwxxxxyyyyyzzzz{{{{{||||||}}}}}}}}~~~~~~~~~~ 1 underline 1 mETKA:kODY UPRAWLENIQ 1 italics 1 for new choice" 1 enlarged 1 condensed 1 arrays to 1 ZEUS Z80 ASSEMBLER 1 V.RUMSEY 1 LOADED 1 BASIC programs."'" (b)To 1 - - - - | <> - - - - otcentruj stroku ! 0 - - - - _ >= - - - - podwinx stroku wprawo ! eht D - - - - \ a 1 Magnify Reduce Next z Figure Quit 1 FLOATING POINT COMPILER 1 elite 1 wersiq 2.2 1 Use 'D'(delete) to remove points" 1 < < < t a 1 men` zapisi 1 " 1 men` zagruzki 1 glawnoe men` 1 < < < T A S W O R D T W O > > > EDIT - - - help page 1 z= 1 THEN - - - scroll up 1 STOP - - - load/save/print text 1 STEP - - - reform to end of para 1 OR - - - - go to end of text 1 INV. VIDEO cursor to word right 1 GRAPHICS - printer control chars >>>>> 1 >= - - - - move line right 1 <= - - - - move line left 1 -%& 1 1 1 1 1 1 1